延續昨天的文章,今天來做PHP資料表內容的刪除(不影響結構)。
1.首先要用到的是 【FORM標籤】,它可以讓你的按鈕或是輸入框之類的變得有作用。<form method="post" action=""></form>
【FORM標籤】裡面的 method 我知道得有 post、get 兩種模式,然後 除了【搜尋】或是【分頁(頁碼)】會用到get,其他情況我都只會到post。
而 【action】裡面的值可以填寫檔案名稱,用途就是被這【FORM標籤】包起來的按鈕之類的,他們會依據哪裏的程式碼執行動作;如果空白的話,就代表只依據"本地"檔案(程式碼寫在同個檔案的意思,但有時候為了方便閱讀,會把程式碼額外寫在別的檔案)
刪除按鈕準備完成,會是這個樣子
因為刪除是一件蠻嚴重的事情,所以做了一個JS來確認刪除。
<form method="post" action="" >
<!-- 下面有個 input 是讓待會的PHP 知道要刪除哪一筆資料,然後用type="hidden"隱藏起來 -->
<input type="hidden" name="delete_id" value="<?php echo $row['staff_id']; ?>">
<button name="delete_staff"
class="badge badge-danger"
onclick="javascript:return del();">
刪除
</button>
</form>
<!-- 刪除確認的JS -->
<script type="text/javascript">
function del()
{
var msg = "您真的確定要刪除嗎?\n\n請確認!";
if (confirm(msg)==true)
{
return true;
}
else
{
return false;
}
};
</script>
PHP程式碼
<?php
/*刪除資料表內容*/
//isset 可當作"按下去"
//$_POST就是 FORM標籤的post,裡面的值,就是標籤裡的name值
//"按下去"哪個東西呢? >> 有name="delete_staff" 的標籤
if (isset($_POST['delete_staff']))
{
$id2 = $_POST['delete_id']; //input type="hidden"的內容
$query2 = "DELETE FROM staff WHERE staff_id='$id2' ";//資料庫語法看一下
$query_run2 = mysqli_query($con,$query2);//這個要加,否則上面動作都白做了
}
?>
整體程式碼大概長這樣
<?php
/*刪除資料表內容*/
if (isset($_POST['delete_staff']))
{
$id2 = $_POST['delete_id'];
$query2 = "DELETE FROM staff WHERE staff_id='$id2' ";
$query_run2 = mysqli_query($con,$query2);
}
?>
<body>
<div class="container">
<table class="table table-sm table-bordered"style="text-align:center;">
<thead style="text-align:center;">
<tr style="text-align:center;">
<th>檔案類別</th>
<th>會員姓名</th>
<th>會員等級</th>
<th>刪除</th>
</tr>
</thead>
<tbody>
<?php
$query = "SELECT * FROM staff ";
$query_run = mysqli_query($con,$query); //$con <<此變數來自引入的 db_cn.php
if(mysqli_num_rows($query_run) > 0)
{
foreach($query_run as $row)
{
?>
<tr>
<td><?php echo $row['staff_id']; ?></td>
<td><?php echo $row['staff_name']; ?></td>
<td><?php echo $row['staff_role']; ?></td>
<td>
<form method="post" action="" >
<!-- 下面有個 input type="hidden" 是讓待會的PHP 知道要刪除哪一筆資料 -->
<input type="hidden"
name="delete_id"
value="<?php echo $row['staff_id']; ?>">
<button name="delete_staff"
class="badge badge-danger"
onclick="javascript:return del();">
刪除
</button>
</form>
</td>
</tr>
<?php
}
}
?>
</tbody>
</div>
</body>
<!-- 刪除確認的JS -->
<script type="text/javascript">
function del()
{
var msg = "您真的確定要刪除嗎?\n\n請確認!";
if (confirm(msg)==true)
{
return true;
}
else
{
return false;
}
};
</script>
今天先這樣,下次見。